﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Volo.Abp.Domain.Entities;

namespace Himp.TaskScheduling
{
    /// <summary>
    /// 工作流模型
    /// </summary>
    public class WorkflowModel
    {
        /// <summary>
        /// Id
        /// </summary>
        public string Id { get; private set; }

        /// <summary>
        /// 模型Key
        /// </summary>
        public string WorkflowModelKey { get; set; }

        /// <summary>
        /// 模型名称
        /// </summary>
        public string WorkflowModelName { get; private set; }

        /// <summary>
        /// 版本号
        /// </summary>
        public int Version { get; private set; }

        /// <summary>
        /// 创建时间
        /// </summary>
        public string CreateTime { get; private set; }

        /// <summary>
        /// 最后修改时间
        /// </summary>
        public string? LastUpdateTime { get; set; }

        /// <summary>
        /// 状态
        /// </summary>
        public EnumWorkflowModelStas? WorkflowModelStas { get; set; }

        /// <summary>
        /// 部署id
        /// </summary>
        public string? DeploymentId { get; set; }

        /// <summary>
        /// 部署key
        /// </summary>
        public string? DeployKey { get; set; }

        /// <summary>
        /// bpmn文件id
        /// </summary>
        public string? EditorSourceExtraValueId { get; set; }

        /// <summary>
        /// xml文件id
        /// </summary>
        public string? EditorSourceValueId { get; set; }

        public WorkflowModel(string id, string name, int version, string createTime)
        {
            Id = id;
            WorkflowModelKey = id;
            WorkflowModelName = name;
            Version = version;
            CreateTime = createTime;
        }
    }
}
